home *** CD-ROM | disk | FTP | other *** search
- /****************************************************************************
- *
- * The SuperVGA Test Kit
- *
- * Copyright (C) 1993 SciTech Software.
- * All rights reserved.
- *
- * Filename: $RCSfile: vesavbe.h $
- * Version: $Revision: 1.1 $
- *
- * Language: ANSI C
- * Environment: IBM PC (MS DOS)
- *
- * Description: Header file declaring the structures used to comminucate
- * with a VESA VBE compliant BIOS.
- *
- * MUST be compiled in the large model.
- *
- * $Id: vesavbe.h 1.1 1993/10/22 08:59:44 kjb release $
- *
- ****************************************************************************/
-
- #ifndef __VESAVBE_H
- #define __VESAVBE_H
-
- #ifndef __DEBUG_H
- #include "debug.h"
- #endif
-
- /*---------------------- Macros and type definitions ----------------------*/
-
- /* SuperVGA information block */
-
- typedef struct {
- char VESASignature[4]; /* 'VESA' 4 byte signature */
- short VESAVersion; /* VBE version number */
- char *OEMStringPtr; /* Pointer to OEM string */
- long Capabilities; /* Capabilities of video card */
- short *VideoModePtr; /* Pointer to supported modes */
- short TotalMemory; /* Number of 64kb memory blocks */
- char reserved[236]; /* Pad to 256 byte block size */
- } VgaInfoBlock;
-
- /* SuperVGA mode information block */
-
- typedef struct {
- short ModeAttributes; /* Mode attributes */
- char WinAAttributes; /* Window A attributes */
- char WinBAttributes; /* Window B attributes */
- short WinGranularity; /* Window granularity in k */
- short WinSize; /* Window size in k */
- short WinASegment; /* Window A segment */
- short WinBSegment; /* Window B segment */
- void *WinFuncPtr; /* Pointer to window function */
- short BytesPerScanLine; /* Bytes per scanline */
- short XResolution; /* Horizontal resolution */
- short YResolution; /* Vertical resolution */
- char XCharSize; /* Character cell width */
- char YCharSize; /* Character cell height */
- char NumberOfPlanes; /* Number of memory planes */
- char BitsPerPixel; /* Bits per pixel */
- char NumberOfBanks; /* Number of CGA style banks */
- char MemoryModel; /* Memory model type */
- char BankSize; /* Size of CGA style banks */
- char NumberOfImagePages; /* Number of images pages */
- char res1; /* Reserved */
- char RedMaskSize; /* Size of direct color red mask */
- char RedFieldPosition; /* Bit posn of lsb of red mask */
- char GreenMaskSize; /* Size of direct color green mask */
- char GreenFieldPosition; /* Bit posn of lsb of green mask */
- char BlueMaskSize; /* Size of direct color blue mask */
- char BlueFieldPosition; /* Bit posn of lsb of blue mask */
- char RsvdMaskSize; /* Size of direct color res mask */
- char RsvdFieldPosition; /* Bit posn of lsb of res mask */
- char DirectColorModeInfo; /* Direct color mode attributes */
- char res2[216]; /* Pad to 256 byte block size */
- } ModeInfoBlock;
-
- #endif /* __VESAVBE_H */
-